Telecommunication system users are demanding higher and higher data rates from their telecommunications devices. Under such circumstances, telecommunications devices using convolutional coding for error control have increased computational complexity. To address this problem, several known methods have attempted to reduce the computational complexity of decoding convolutional codes in a telecommunications device.
For example, U.S. Pat. Nos. 6,888,900 and 6,307,899 to Starr et al. each discloses a system for optimizing gain in a convolutional sequential decoder or a Viterbi decoder. The system includes a signal-to-noise ratio (SNR) monitor used for adjusting the size of a variable length input buffer and/or a variable length backsearch buffer.
U.S. Pat. No. 6,690,752 to Beerel et al. discloses a sequential decoding system including a controller connected to a sequential decoder and a signal-to-noise ratio (SNR) based switch. The controller uses the SNR to adjust the voltage level and the clock frequency of the sequential decoder. U.S. Pat. No. 6,728,322 to Asai et al. also discloses a sequential decoder system. The system includes a controller connected to a sequential decoder and a switch used to enable a tracking mode. In addition, U.S. Pat. No. 6,345,073 to Curry et al. discloses a convolutional despreading method that uses a Viterbi or Fano convolution search technique.
Unfortunately, despite such developments in convolutional decoding systems, there still exists a need for a more efficient convolutional decoder than is presently available.